package com.ning.run.service;

import com.ning.run.POJO.PO.Memberinfo;
import com.ning.run.POJO.TO.MemberInfoFindPassTO;
import com.ning.run.POJO.TO.MemberInfoLoginTO;
import com.ning.run.POJO.TO.MemberInfoRegisterTO;
import com.ning.run.POJO.VO.LoginVO;

/**
* @author Ning
* @description 针对表【MEMBERINFO】的数据库操作Service
* @createDate 2022-12-09 20:45:57
*/
public interface MemberinfoService{
    /**
     * @Description: 用户注册
     * @param: registerTO
     * @return void
     * @author: ning
     * @email: cxy_ning@163.com
     * @date: 2022/12/12 19:28
    */
    void register(MemberInfoRegisterTO registerTO);

    /**
     * @Description: 用户登陆
     * @param: loginTO
     * @return void
     * @author: ning
     * @email: cxy_ning@163.com
     * @date: 2022/12/12 20:42
    */
    Memberinfo login(MemberInfoLoginTO loginTO);

    /**
     * @Description:用户注销登陆
     * @param:
     * @return void
     * @author: ning
     * @email: cxy_ning@163.com
     * @date: 2022/12/12 20:44
    */
    void logout(int userId);

    /**
     * @Description: 用户行为加分
     * @param: userName 用户名字
     * @param: action 加分行为
     * @return void
     * @author: ning
     * @email: cxy_ning@163.com
     * @date: 2022/12/12 19:28
    */
    void addPointAndRecordByAction(String userName,String action);

    /**
     * @Description:登陆首页的数据
     * @param:
     * @return void
     * @author: ning
     * @email: cxy_ning@163.com
     * @date: 2022/12/13 19:30
    */
    LoginVO loginData();

    /**
     * @Description: 通过邮箱找回密码
     * @param: memberInfoFindPassTO
     * @return void
     * @author: ning
     * @email: cxy_ning@163.com
     * @date: 2022/12/15 20:07
    */
    void findAccount(MemberInfoFindPassTO memberInfoFindPassTO) throws Exception;
}
